Embedded marker systems such as printers, multi-function printers, and copiers generally include an embedded controller configured to implement a variety of user functions through a plurality of user interfaces. One of the more common marking systems is the multi-function printer, which is often referred to as an “all-in-one” system because it includes a collection of devices that perform multiple device functions like printing, faxing, scanning, and other digital communications. These device functions are generally accessed by users through a plurality of user interfaces such as, but not limited to, a device control panel, an embedded web server (EWS), a Web Jet Admin (WJA) and various print drivers.
Specific tasks initiated by the user (i.e., applications) are implemented within the multi-function printer through the controller and what are known as system models and application views. System models manage behavior and data for each application implemented by a given user interface, while an application view obtains data from the system model and presents the data to the user. Conceptually, an application view is the functional link between the system model and the view as seen by the user.
In known multi-function printer configurations, there are dedicated system models for each available user interface. This multiple system model approach undesirably couples the application views to the system models. This coupling relationship limits the functionality and expandability of the system. For example, in a multiple system model approach, all system status messages, errors and warnings must be communicated to each device interface. As a result, messages regarding a particular device function are sent to a user interface regardless as to whether the user is actively using that device. Specifically, from an error message standpoint, if a first user is sending a fax on a multi-function device, while a remote user sends a network print job that jams the printing device, the first user sending the fax will get an error message displayed on the user interface indicating the jam from the fax that requires the first user to respond to the error message. Moreover, from a functionality standpoint, the remote user sending the fax will not be allowed to continue with the faxing application until the paper jam has been cleared.
Accordingly, the embodiments described hereinafter were developed in light of these and other drawbacks associated with a marking device that employs a multiple system model approach to data and application management.